package com.zhisheng.gufei.produce.entity;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

import com.zhisheng.gufei.grabagesort.entity.GrabageSort;

/**
 * 危险废物产生及去向情况表<br>
 * 事实表，用于记录申请单位的废物利用情况，并为统计提供事实数据
 * 
 * @author xgye
 */
@Entity
@Table(name = "gf_produce_dest")
public class GrabageProduceDestInfo implements Serializable  {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1874112784158L;
    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE,generator="seq")   
    @SequenceGenerator(name="seq", sequenceName="DECLARATION_SEQ") 
	private int id;
	
	/** 关联废物类型与编号  */
	@ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name="grabageId",nullable=false)
	private GrabageSort grabage;
	
	/** 废物年生产量 ++ */
	private Float produceAmount = 0f;
	
	/** 废物年排放量 ++ */
	private Float emissionAmount = 0f;
	
	/** 废物年综合利用量 ++ */
	private Float utilizedAmount = 0f;
	
	/** 本单位综合利用量 */
	private Float corporationUtilizedAmount = 0f;
	
	/** 年处置量 ++ */
	private Float disposeAmount = 0f;
	
	/** 本单位年处置量 */
	private Float corporationDisposeAmount = 0f;
	
	/** 处置往年贮存量 ++ */
	private Float disposeStockPast = 0f;
	
	/** 年贮存量 ++ */
	private Float stockAmount = 0f;
	
	/** 历年单位已贮存量 ++ */
	private Float stockAmountYears = 0f;
	
	/** 废物含有主要有害成份 */
	private String mainComponents = "";
	
	/** 年转移频次 */
	private Integer transferFrequency = 0;
	
	@ManyToOne
    @JoinColumn(name="corperationId",nullable=false)
	private Declaration corperation;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public GrabageSort getGrabage() {
        return grabage;
    }

    public void setGrabage(GrabageSort grabage) {
        this.grabage = grabage;
    }

    public Float getProduceAmount() {
        return produceAmount;
    }

    public void setProduceAmount(Float produceAmount) {
        this.produceAmount = produceAmount;
    }

    public Float getEmissionAmount() {
        return emissionAmount;
    }

    public void setEmissionAmount(Float emissionAmount) {
        this.emissionAmount = emissionAmount;
    }

    public Float getUtilizedAmount() {
        return utilizedAmount;
    }

    public void setUtilizedAmount(Float utilizedAmount) {
        this.utilizedAmount = utilizedAmount;
    }

    public Float getDisposeAmount() {
        return disposeAmount;
    }

    public void setDisposeAmount(Float disposeAmount) {
        this.disposeAmount = disposeAmount;
    }

    public Float getCorporationDisposeAmount() {
        return corporationDisposeAmount;
    }

    public void setCorporationDisposeAmount(Float corporationDisposeAmount) {
        this.corporationDisposeAmount = corporationDisposeAmount;
    }

    public Float getDisposeStockPast() {
        return disposeStockPast;
    }

    public void setDisposeStockPast(Float disposeStockPast) {
        this.disposeStockPast = disposeStockPast;
    }

    public Float getStockAmount() {
        return stockAmount;
    }

    public void setStockAmount(Float stockAmount) {
        this.stockAmount = stockAmount;
    }

    public Float getStockAmountYears() {
        return stockAmountYears;
    }

    public void setStockAmountYears(Float stockAmountYears) {
        this.stockAmountYears = stockAmountYears;
    }

    public String getMainComponents() {
        return mainComponents;
    }

    public void setMainComponents(String mainComponents) {
        this.mainComponents = mainComponents;
    }

    public Integer getTransferFrequency() {
        return transferFrequency;
    }

    public void setTransferFrequency(Integer transferFrequency) {
        this.transferFrequency = transferFrequency;
    }

    public Declaration getCorperation() {
        return corperation;
    }

    public void setCorperation(Declaration corperation) {
        this.corperation = corperation;
    }

    public Float getCorporationUtilizedAmount() {
        return corporationUtilizedAmount;
    }

    public void setCorporationUtilizedAmount(Float corporationUtilizedAmount) {
        this.corporationUtilizedAmount = corporationUtilizedAmount;
    }

}
